package com.zjw.service;

import com.zjw.entity.Goods;
import com.zjw.vo.GoodsDetail;

import java.util.List;

/**
 * 好物信息表(Goods)表服务接口
 *
 * @author 翟
 * @since 2025-04-09 08:59:18
 */
public interface GoodsService {

    /**
     * 通过登录类型和分页展示好物列表数据
     * @param currPageNo 当前页码
     * @param pageSize 每页展示条数
     * @param loginType 登录类型：普通用户  管理员
     * @return List<Goods>
     */
    List<Goods> queryGoodsByLoginTypeAndPaging(int currPageNo, int pageSize, String loginType);

    /**
     * 通过登录类型查询好物数量
     * @param loginType 登录类型：普通用户  管理员
     * @return
     */
    int queryGoodsCountByLoginType(String loginType);

    /**
     * 根据商品ID查看商品详情
     * @param id 商品ID
     * @param loginType 登录类型：普通用户  管理员
     * @return GoodsDetail
     */
    GoodsDetail queryGoodsDetailById(int id , String loginType);

    /**
     * 添加商品
     * @param goods 商品实体类
     * @return
     */
    boolean addGoods(Goods goods);

    /**
     * 通过用户id分页查询用户发布的商品数量
     * @param currPageNo 当前页
     * @param pageSize 每页显示条数
     * @param userId 用户id
     * @return List<Goods>
     */
    List<Goods> queryGoodsByUserIdAndPaging(int currPageNo , int pageSize , int userId);

    /**
     * 通过用户id查询用户发布的商品数量
     * @param userId 用户ID
     * @return
     */
    int queryGoodsCountByUserId(int userId);


}
